class opt_feat
{
public:  
    inline opt_feat(const std::string  in_path, 
		    const std::string  in_actionNames, 
		    const std::string  in_feat_path,
		    const int in_col, 
		    const int in_row);
    
    
    inline void training();
    inline void testing();
    inline void nn_riemannian();
    

    
double THRESH;
const std::string path;
const std::string actionNames;
const std::string feat_path;

const int row;
const int col;

const int n_samples_tr; //# samples training
const int n_samples_te; //# samples testing



field<std::string> actions;
field<std::string> videos;

std::vector< mat > covs;

  private:
  inline static void drawOptFlowMap(const cv::Mat& flow, cv::Mat& cflowmap, int step, double, const cv::Scalar& color);
  inline void feature_video(std::string one_video);
  inline void calc_features();
  inline void saving(bool isTraining);
  inline void save(uword act, uword vi);

 
  
};